1
Gerenciamento de Precisão e Mitigação de Estouro
AI018Lesson 3
00:00

No NumPy, Gerenciamento de Precisão é a seleção deliberada das profundidades de bits para equilibrar eficiência de memória com correção numérica. Diferentemente dos inteiros padrão do Python, que têm precisão arbitrária, o NumPy usa tipos C de tamanho fixo (por exemplo, int32_t, uint64_t).

1. A Hierarquia de Tipos

Os tipos dtypes do NumPy definem o tamanho da memória. Embora np.int_() forneça um tamanho dependente da plataforma, sistemas robustos contam com Aliases de Tamanho Fixo (Tabela: Página 34) para garantir consistência entre diferentes hardware.

  • Inteiros:int8_t, int16_t, int32_t, int64_t.
  • Sem sinal:uint8_t até uint64_t.
  • Ponteiros:intptr_t, uintptr_t.

2. Ferramentas de Inspeção

Antes de executar operações aritméticas, use np.iinfo() e np.finfo() para inspecionar limites. Por exemplo, 1 + np.finfo(np.longdouble).eps identifica o epsilon da máquina — o limite onde adições já não alteram o valor.

Estouro de InteiroLógica de WraparoundMáx + 1 — MínPonto FlutuanteLógica de SaturaçãoUltrapassar Máx — inf

3. Os Mecanismos de Estouro

O NumPy não levanta erros em caso de estouro; ele falha silenciosamente. Usando np.power(100, 8, dtype=np.int32) resulta em truncamento, enquanto float64 transita para inf. Use np.issubdtype(d, np.floating) para validar categorias antes das operações.

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>